00001 /////////////////////////////////////////////////////////////////////////////// 00002 /// @file deLogDestiny.hpp 00003 /// 00004 /// @brief Error and Logging Class - Destiny Version I 00005 /// 00006 /// @author Hootie 00007 /// 00008 /// This file is the intellectual property of Novus Delta, LLC.. Usage of the 00009 /// contents of this file is subject to the Destiny3D Member License which 00010 /// can be found at http://www.destiny3d.com. Any other usage is prohibited. 00011 /// 00012 /// This file is distributed "AS IS" without warranty of any kind. Novus 00013 /// Delta, LLC. does not guarantee the fitness of the contents of this file 00014 /// for any particular purpose. 00015 /// 00016 /// Copyright (C) 2001-2003 Novus Delta, LLC. All Rights Reserved. 00017 /// 00018 /// <hr> 00019 /// Change History 00020 /// <hr> 00021 /// 00022 /// @date Dec 2001 00023 /// @author Hootie 00024 /// @remarks Creation 00025 /// 00026 /////////////////////////////////////////////////////////////////////////////// 00027 00028 #ifndef DELOGDESTINY_HPP 00029 #define DELOGDESTINY_HPP 00030 00031 00032 00033 //================================================================================= 00034 // Includes 00035 //================================================================================= 00036 00037 #include "deLog.hpp" 00038 #include "deString.hpp" 00039 #include "deShared.hpp" 00040 #include "deArray.hpp" 00041 00042 00043 00044 //================================================================================= 00045 // Internal Data Structures 00046 //================================================================================= 00047 00048 typedef struct FileInfo 00049 { 00050 unsigned int ThreadID; 00051 deWinFile *ErrorFile; 00052 deWinFile *LogFile; 00053 } FileInfo; 00054 00055 00056 00057 //================================================================================= 00058 // deLogDestiny Class 00059 // 00060 // Error and Logging Class - Destiny Version I 00061 //================================================================================= 00062 00063 class deLogDestiny : public IdeLog 00064 { 00065 public: 00066 deLogDestiny(char *LogName); 00067 ~deLogDestiny(); 00068 00069 deBoolean GetCreationResult(void) { return CreationResult; } 00070 00071 void Error(deErrorLevelType ErrorLevel, unsigned int ErrorCode); 00072 void Error(deErrorLevelType ErrorLevel, char *Format, ...); 00073 00074 void ErrorStart(deErrorLevelType ErrorLevel); 00075 void ErrorAddLine(unsigned int ErrorCode); 00076 void ErrorAddLine(char *Format, ...); 00077 void ErrorEnd(deErrorLevelType ErrorLevel); 00078 00079 void Log(char *Format, ...); 00080 00081 void LogFunctionStart(const char *FunctionName); 00082 void LogParamListStart(); 00083 void LogParamListEnd(); 00084 void LogFunctionEnd(const char *FunctionName); 00085 00086 void LogVariable(const char *VarName, char *Format, ...); 00087 00088 private: 00089 deBoolean GetThreadFileInfo(FileInfo *Info); 00090 00091 deBoolean CreationResult; 00092 char BaseFileName[120]; 00093 deTArray<FileInfo> LogFiles; 00094 }; 00095 00096 00097 00098 00099 #endif // End DELOGDESTINY_HPP 00100 00101
1.3-rc3